package com.cal.utms.entity;

import java.io.Serializable;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/**
 * The persistent class for the customer_transaction_log database table.
 * 
 */
@Entity
@Table(name = "customer_transaction_log")
@NamedQuery(name = "CustomerTransactionLog.findAll", query = "SELECT c FROM CustomerTransactionLog c")
public class CustomerTransactionLog implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private int id;

	@Temporal(TemporalType.TIMESTAMP)
	private Date date;

	@Column(name = "TRAN_TYPE")
	private String tranType;

	@Column(name = "TRAN_UNITS")
	private BigDecimal tranUnits;

	// bi-directional many-to-one association to User
	@ManyToOne
	@JoinColumn(name = "RECORD_USER")
	private User user;

	// bi-directional many-to-one association to Customer
	@ManyToOne
	private Customer customer;

	// bi-directional many-to-one association to Fund
	@ManyToOne
	private Fund fund;

	@ManyToOne
	@JoinColumn(name = "INVESTMENT_ID")
	private CustomerInvestment customerInvestment;

	public CustomerTransactionLog() {
	}

	public int getId() {
		return this.id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Date getDate() {
		return this.date;
	}

	public void setDate(Date date) {
		this.date = date;
	}

	public String getTranType() {
		return this.tranType;
	}

	public void setTranType(String tranType) {
		this.tranType = tranType;
	}

	public BigDecimal getTranUnits() {
		return this.tranUnits;
	}

	public void setTranUnits(BigDecimal tranUnits) {
		this.tranUnits = tranUnits;
	}

	public User getUser() {
		return this.user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	public Customer getCustomer() {
		return this.customer;
	}

	public void setCustomer(Customer customer) {
		this.customer = customer;
	}

	public Fund getFund() {
		return this.fund;
	}

	public void setFund(Fund fund) {
		this.fund = fund;
	}

	public CustomerInvestment getCustomerInvestment() {
		return customerInvestment;
	}

	public void setCustomerInvestment(CustomerInvestment customerInvestment) {
		this.customerInvestment = customerInvestment;
	}

}